package org.ycx.doc.dto;

import org.springframework.format.annotation.DateTimeFormat;
import org.ycx.common.annotation.FormDesc;

import java.io.Serializable;
import java.util.Date;

public class DocUser implements Serializable {
    /**
     * 主键
     */
    private Integer uid;

    /**
     * 登录名
     */
    private String loginName;

    /**
     * 密码
     */
    private String passwd;

    /**
     * 昵称
     */
    private String nickName;

    /**
     * 性别
     */
    private String gender;

    /**
     * 手机号
     */
    private String mobile;

    /**
     * 邮箱
     */
    private String email;

    /**
     * 头像
     */
    private String avater;

    /**
     * 密码有效日期
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date pwdEndDate;

    /**
     * 是否禁用
     */
    private String useState;

    /**
     * 删除标志
     */
    private String delState;

    /**
     * 创建时间
     */
    private Date createTs;

    /**
     * 创建人
     */
    private Integer createUid;

    /**
     * 更新时间
     */
    private Date updateTs;

    /**
     * 更新人
     */
    private Integer updateUid;

    private Integer role;

    private Integer gid;

    private static final long serialVersionUID = 1L;

    public Integer getUid() {
        return uid;
    }

    public void setUid(Integer uid) {
        this.uid = uid;
    }

    public String getLoginName() {
        return loginName;
    }

    public void setLoginName(String loginName) {
        this.loginName = loginName;
    }

    public String getPasswd() {
        return passwd;
    }

    public void setPasswd(String passwd) {
        this.passwd = passwd;
    }

    public String getNickName() {
        return nickName;
    }

    public void setNickName(String nickName) {
        this.nickName = nickName;
    }

    public String getGender() {
        return gender;
    }

    public void setGender(String gender) {
        this.gender = gender;
    }

    public String getMobile() {
        return mobile;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getAvater() {
        return avater;
    }

    public void setAvater(String avater) {
        this.avater = avater;
    }

    public Date getPwdEndDate() {
        return pwdEndDate;
    }

    public void setPwdEndDate(Date pwdEndDate) {
        this.pwdEndDate = pwdEndDate;
    }

    public String getUseState() {
        return useState;
    }

    public void setUseState(String useState) {
        this.useState = useState;
    }

    public String getDelState() {
        return delState;
    }

    public void setDelState(String delState) {
        this.delState = delState;
    }

    public Date getCreateTs() {
        return createTs;
    }

    public void setCreateTs(Date createTs) {
        this.createTs = createTs;
    }

    public Integer getCreateUid() {
        return createUid;
    }

    public void setCreateUid(Integer createUid) {
        this.createUid = createUid;
    }

    public Date getUpdateTs() {
        return updateTs;
    }

    public void setUpdateTs(Date updateTs) {
        this.updateTs = updateTs;
    }

    public Integer getUpdateUid() {
        return updateUid;
    }

    public void setUpdateUid(Integer updateUid) {
        this.updateUid = updateUid;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", uid=").append(uid);
        sb.append(", loginName=").append(loginName);
        sb.append(", passwd=").append(passwd);
        sb.append(", nickName=").append(nickName);
        sb.append(", gender=").append(gender);
        sb.append(", mobile=").append(mobile);
        sb.append(", email=").append(email);
        sb.append(", avater=").append(avater);
        sb.append(", pwdEndDate=").append(pwdEndDate);
        sb.append(", useState=").append(useState);
        sb.append(", delState=").append(delState);
        sb.append(", createTs=").append(createTs);
        sb.append(", createUid=").append(createUid);
        sb.append(", updateTs=").append(updateTs);
        sb.append(", updateUid=").append(updateUid);
        sb.append("]");
        return sb.toString();
    }

    public Integer getRole() {
        return role;
    }

    public void setRole(Integer role) {
        this.role = role;
    }

    public Integer getGid() {
        return gid;
    }

    public void setGid(Integer gid) {
        this.gid = gid;
    }
}